package Libs.Dados.Objetos
{
	[RemoteClass(alias="Neturion.Dados.ContaBanco")]	
	public class ContaBanco extends Libs.Dados.Objetos.Conta
	{
		private var _tipoContaBanco:Libs.Dados.Objetos.TipoContaBanco;
        private var _agencia:Libs.Dados.Objetos.Agencia;
        private var _titular:Libs.Dados.Objetos.Pessoa;
        private var _saldoAnterior:Number;
        private var _saldoAtual:Number;
        private var _limite:Number;
        private var _percentualLimite:int;
        private var _inicioVigencia:Date;
        private var _fimVigencia:Date;
        private var _neturionLog:Libs.Dados.Objetos.NeturionLog;
        
		public function ContaBanco()
		{
		}
		
		public function set TipoContaBanco(value:Libs.Dados.Objetos.TipoContaBanco):void
        {
            this._tipoContaBanco=value;
        }

        public function set Agencia(value:Libs.Dados.Objetos.Agencia):void
        {
            this._agencia=value;
        }

        public function set Titular(value:Libs.Dados.Objetos.Pessoa):void
        {
            this._titular=value;
        }

        public function set SaldoAnterior(value:Number):void
        {
            this._saldoAnterior=value;
        }

        public function set SaldoAtual(value:Number):void
        {
            this._saldoAtual=value;
        }
        
        public function set Limite(value:Number):void
        {
            this._limite=value;
        }

        public function set PercentualLimite(value:int):void
        {
            this._percentualLimite=value;
        }
        
        public function set InicioVigencia(value:Date):void
        {
            this._inicioVigencia=value;
        }

        public function set FimVigencia(value:Date):void
        {
            this._fimVigencia=value;
        }

        public function set NeturionLog(value:Libs.Dados.Objetos.NeturionLog):void
        {
            this._neturionLog=value;
        }
        
		public function get TipoContaBanco():Libs.Dados.Objetos.TipoContaBanco
        {
            return this._tipoContaBanco;
        }

        public function get Agencia():Libs.Dados.Objetos.Agencia
        {
            return this._agencia;
        }

        public function get Titular():Libs.Dados.Objetos.Pessoa
        {
            return this._titular;
        }

        public function get SaldoAnterior():Number
        {
            return this._saldoAnterior;
        }

        public function get SaldoAtual():Number
        {
            return this._saldoAtual;
        }        
        
        public function get Limite():Number
        {
            return this._limite;
        }

        public function get PercentualLimite():int
        {
            return this._percentualLimite;
        }

        public function get InicioVigencia():Date
        {
        	var data:Date = null;
        	if (this._inicioVigencia != null)
        	{
        		var dia:Number = _inicioVigencia.dateUTC; 
	        	var mes:Number = _inicioVigencia.monthUTC; 
	        	var ano:Number = _inicioVigencia.fullYearUTC;
	        	data = new Date(ano,mes,dia);
        	}
            return this._inicioVigencia = data;
        }

        public function get FimVigencia():Date
        {
        	var data:Date = null;
        	if (this._fimVigencia != null)
        	{
        		var dia:Number = _fimVigencia.dateUTC; 
	        	var mes:Number = _fimVigencia.monthUTC; 
	        	var ano:Number = _fimVigencia.fullYearUTC;
	        	data = new Date(ano,mes,dia);
        	}
            return this._fimVigencia = data;
        }

        public function get NeturionLog():Libs.Dados.Objetos.NeturionLog
        {
            return this._neturionLog;
        }		
	}
}